/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.marlboroug.editors;

import com.marlboroug.entity.Editors;
import java.util.List;
import javax.ejb.Remote;


@Remote
public interface EditorsManagerRemote {
    
    /** Permet de créer un editeur
     * 
     * @param editor Envoie un objet de type editeur
     * @return Un boolean pour confirmer la création
     */
    boolean create (Editors editor);

    /** Permet de supprimer un editeur
     * 
     * @param ID_editors Envoie un ID d'un editeur
     * @return Un boolean pour confirmer la suppression
     */
    boolean delete (Long ID_editors);

    /** Permet de retourner un objet Editors en fonction d'un ID
     * 
     * @param ID_editors Un ID d'un editeur
     * @return Un objet editeur
     */
    Editors find (Long ID_editors);

    /** Permet de mettre à jour un editeur
     * 
     * @param editor Envoie un objet editeur
     * @return Un boolean pour confirmer la modification
     */
    boolean update (Editors editor);
    
    /** Permet de retourner une liste d'editeurs en fonction d'un mot clés
     * 
     * @param pattern Un mot clés
     * @return Une liste d'editeurs
     */
    List<Editors> retrieveByName (String pattern);
    
    /** Permet de retourner un editeur en fonction d'un nom
     * 
     * @param pattern Un nom
     * @return Un editeur
     */
    List<Editors> findCreateEditor (String pattern);
    
    /** Permet de retourner une liste des editeurs
     * 
     * @return Une liste d'editeurs
     */
    List<Editors> findAll ();
    
}
